package com.tianhao.shardingsphere.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 支出明细表
 * @TableName expend_details.sql
 */
@TableName(value ="expend_details.sql")
public class ExpendDetails implements Serializable {
    /**
     * 
     */
    @TableId(type = IdType.AUTO)
    private Integer id;

    /**
     * 支出类型
     */
    private Integer epId;

    /**
     * 支出金额
     */
    private BigDecimal epMoney;

    /**
     * 入账日期
     */
    private Date entryDate;

    /**
     * 描述
     */
    private String description;

    /**
     * 租户id
     */
    private Long tenantId;

    /**
     * 
     */
    private Long objectVersionNumber;

    /**
     * 
     */
    private Date creationDate;

    /**
     * 
     */
    private Long createdBy;

    /**
     * 
     */
    private Long lastUpdatedBy;

    /**
     * 
     */
    private Date lastUpdateDate;

    /**
     * 
     */
    private String attribute1;

    /**
     * 
     */
    private String attribute2;

    /**
     * 
     */
    private String attribute3;

    /**
     * 
     */
    private String attribute4;

    /**
     * 
     */
    private String attribute5;

    /**
     * 
     */
    private String attribute6;

    /**
     * 
     */
    private String attribute7;

    /**
     * 
     */
    private String attribute8;

    /**
     * 
     */
    private String attribute9;

    /**
     * 
     */
    private String attribute10;

    /**
     * 
     */
    private String attribute11;

    /**
     * 
     */
    private String attribute12;

    /**
     * 
     */
    private String attribute13;

    /**
     * 
     */
    private String attribute14;

    /**
     * 
     */
    private String attribute15;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;

    /**
     * 
     */
    public Integer getId() {
        return id;
    }

    /**
     * 
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * 支出类型
     */
    public Integer getEpId() {
        return epId;
    }

    /**
     * 支出类型
     */
    public void setEpId(Integer epId) {
        this.epId = epId;
    }

    /**
     * 支出金额
     */
    public BigDecimal getEpMoney() {
        return epMoney;
    }

    /**
     * 支出金额
     */
    public void setEpMoney(BigDecimal epMoney) {
        this.epMoney = epMoney;
    }

    /**
     * 入账日期
     */
    public Date getEntryDate() {
        return entryDate;
    }

    /**
     * 入账日期
     */
    public void setEntryDate(Date entryDate) {
        this.entryDate = entryDate;
    }

    /**
     * 描述
     */
    public String getDescription() {
        return description;
    }

    /**
     * 描述
     */
    public void setDescription(String description) {
        this.description = description;
    }

    /**
     * 租户id
     */
    public Long getTenantId() {
        return tenantId;
    }

    /**
     * 租户id
     */
    public void setTenantId(Long tenantId) {
        this.tenantId = tenantId;
    }

    /**
     * 
     */
    public Long getObjectVersionNumber() {
        return objectVersionNumber;
    }

    /**
     * 
     */
    public void setObjectVersionNumber(Long objectVersionNumber) {
        this.objectVersionNumber = objectVersionNumber;
    }

    /**
     * 
     */
    public Date getCreationDate() {
        return creationDate;
    }

    /**
     * 
     */
    public void setCreationDate(Date creationDate) {
        this.creationDate = creationDate;
    }

    /**
     * 
     */
    public Long getCreatedBy() {
        return createdBy;
    }

    /**
     * 
     */
    public void setCreatedBy(Long createdBy) {
        this.createdBy = createdBy;
    }

    /**
     * 
     */
    public Long getLastUpdatedBy() {
        return lastUpdatedBy;
    }

    /**
     * 
     */
    public void setLastUpdatedBy(Long lastUpdatedBy) {
        this.lastUpdatedBy = lastUpdatedBy;
    }

    /**
     * 
     */
    public Date getLastUpdateDate() {
        return lastUpdateDate;
    }

    /**
     * 
     */
    public void setLastUpdateDate(Date lastUpdateDate) {
        this.lastUpdateDate = lastUpdateDate;
    }

    /**
     * 
     */
    public String getAttribute1() {
        return attribute1;
    }

    /**
     * 
     */
    public void setAttribute1(String attribute1) {
        this.attribute1 = attribute1;
    }

    /**
     * 
     */
    public String getAttribute2() {
        return attribute2;
    }

    /**
     * 
     */
    public void setAttribute2(String attribute2) {
        this.attribute2 = attribute2;
    }

    /**
     * 
     */
    public String getAttribute3() {
        return attribute3;
    }

    /**
     * 
     */
    public void setAttribute3(String attribute3) {
        this.attribute3 = attribute3;
    }

    /**
     * 
     */
    public String getAttribute4() {
        return attribute4;
    }

    /**
     * 
     */
    public void setAttribute4(String attribute4) {
        this.attribute4 = attribute4;
    }

    /**
     * 
     */
    public String getAttribute5() {
        return attribute5;
    }

    /**
     * 
     */
    public void setAttribute5(String attribute5) {
        this.attribute5 = attribute5;
    }

    /**
     * 
     */
    public String getAttribute6() {
        return attribute6;
    }

    /**
     * 
     */
    public void setAttribute6(String attribute6) {
        this.attribute6 = attribute6;
    }

    /**
     * 
     */
    public String getAttribute7() {
        return attribute7;
    }

    /**
     * 
     */
    public void setAttribute7(String attribute7) {
        this.attribute7 = attribute7;
    }

    /**
     * 
     */
    public String getAttribute8() {
        return attribute8;
    }

    /**
     * 
     */
    public void setAttribute8(String attribute8) {
        this.attribute8 = attribute8;
    }

    /**
     * 
     */
    public String getAttribute9() {
        return attribute9;
    }

    /**
     * 
     */
    public void setAttribute9(String attribute9) {
        this.attribute9 = attribute9;
    }

    /**
     * 
     */
    public String getAttribute10() {
        return attribute10;
    }

    /**
     * 
     */
    public void setAttribute10(String attribute10) {
        this.attribute10 = attribute10;
    }

    /**
     * 
     */
    public String getAttribute11() {
        return attribute11;
    }

    /**
     * 
     */
    public void setAttribute11(String attribute11) {
        this.attribute11 = attribute11;
    }

    /**
     * 
     */
    public String getAttribute12() {
        return attribute12;
    }

    /**
     * 
     */
    public void setAttribute12(String attribute12) {
        this.attribute12 = attribute12;
    }

    /**
     * 
     */
    public String getAttribute13() {
        return attribute13;
    }

    /**
     * 
     */
    public void setAttribute13(String attribute13) {
        this.attribute13 = attribute13;
    }

    /**
     * 
     */
    public String getAttribute14() {
        return attribute14;
    }

    /**
     * 
     */
    public void setAttribute14(String attribute14) {
        this.attribute14 = attribute14;
    }

    /**
     * 
     */
    public String getAttribute15() {
        return attribute15;
    }

    /**
     * 
     */
    public void setAttribute15(String attribute15) {
        this.attribute15 = attribute15;
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        ExpendDetails other = (ExpendDetails) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
            && (this.getEpId() == null ? other.getEpId() == null : this.getEpId().equals(other.getEpId()))
            && (this.getEpMoney() == null ? other.getEpMoney() == null : this.getEpMoney().equals(other.getEpMoney()))
            && (this.getEntryDate() == null ? other.getEntryDate() == null : this.getEntryDate().equals(other.getEntryDate()))
            && (this.getDescription() == null ? other.getDescription() == null : this.getDescription().equals(other.getDescription()))
            && (this.getTenantId() == null ? other.getTenantId() == null : this.getTenantId().equals(other.getTenantId()))
            && (this.getObjectVersionNumber() == null ? other.getObjectVersionNumber() == null : this.getObjectVersionNumber().equals(other.getObjectVersionNumber()))
            && (this.getCreationDate() == null ? other.getCreationDate() == null : this.getCreationDate().equals(other.getCreationDate()))
            && (this.getCreatedBy() == null ? other.getCreatedBy() == null : this.getCreatedBy().equals(other.getCreatedBy()))
            && (this.getLastUpdatedBy() == null ? other.getLastUpdatedBy() == null : this.getLastUpdatedBy().equals(other.getLastUpdatedBy()))
            && (this.getLastUpdateDate() == null ? other.getLastUpdateDate() == null : this.getLastUpdateDate().equals(other.getLastUpdateDate()))
            && (this.getAttribute1() == null ? other.getAttribute1() == null : this.getAttribute1().equals(other.getAttribute1()))
            && (this.getAttribute2() == null ? other.getAttribute2() == null : this.getAttribute2().equals(other.getAttribute2()))
            && (this.getAttribute3() == null ? other.getAttribute3() == null : this.getAttribute3().equals(other.getAttribute3()))
            && (this.getAttribute4() == null ? other.getAttribute4() == null : this.getAttribute4().equals(other.getAttribute4()))
            && (this.getAttribute5() == null ? other.getAttribute5() == null : this.getAttribute5().equals(other.getAttribute5()))
            && (this.getAttribute6() == null ? other.getAttribute6() == null : this.getAttribute6().equals(other.getAttribute6()))
            && (this.getAttribute7() == null ? other.getAttribute7() == null : this.getAttribute7().equals(other.getAttribute7()))
            && (this.getAttribute8() == null ? other.getAttribute8() == null : this.getAttribute8().equals(other.getAttribute8()))
            && (this.getAttribute9() == null ? other.getAttribute9() == null : this.getAttribute9().equals(other.getAttribute9()))
            && (this.getAttribute10() == null ? other.getAttribute10() == null : this.getAttribute10().equals(other.getAttribute10()))
            && (this.getAttribute11() == null ? other.getAttribute11() == null : this.getAttribute11().equals(other.getAttribute11()))
            && (this.getAttribute12() == null ? other.getAttribute12() == null : this.getAttribute12().equals(other.getAttribute12()))
            && (this.getAttribute13() == null ? other.getAttribute13() == null : this.getAttribute13().equals(other.getAttribute13()))
            && (this.getAttribute14() == null ? other.getAttribute14() == null : this.getAttribute14().equals(other.getAttribute14()))
            && (this.getAttribute15() == null ? other.getAttribute15() == null : this.getAttribute15().equals(other.getAttribute15()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getEpId() == null) ? 0 : getEpId().hashCode());
        result = prime * result + ((getEpMoney() == null) ? 0 : getEpMoney().hashCode());
        result = prime * result + ((getEntryDate() == null) ? 0 : getEntryDate().hashCode());
        result = prime * result + ((getDescription() == null) ? 0 : getDescription().hashCode());
        result = prime * result + ((getTenantId() == null) ? 0 : getTenantId().hashCode());
        result = prime * result + ((getObjectVersionNumber() == null) ? 0 : getObjectVersionNumber().hashCode());
        result = prime * result + ((getCreationDate() == null) ? 0 : getCreationDate().hashCode());
        result = prime * result + ((getCreatedBy() == null) ? 0 : getCreatedBy().hashCode());
        result = prime * result + ((getLastUpdatedBy() == null) ? 0 : getLastUpdatedBy().hashCode());
        result = prime * result + ((getLastUpdateDate() == null) ? 0 : getLastUpdateDate().hashCode());
        result = prime * result + ((getAttribute1() == null) ? 0 : getAttribute1().hashCode());
        result = prime * result + ((getAttribute2() == null) ? 0 : getAttribute2().hashCode());
        result = prime * result + ((getAttribute3() == null) ? 0 : getAttribute3().hashCode());
        result = prime * result + ((getAttribute4() == null) ? 0 : getAttribute4().hashCode());
        result = prime * result + ((getAttribute5() == null) ? 0 : getAttribute5().hashCode());
        result = prime * result + ((getAttribute6() == null) ? 0 : getAttribute6().hashCode());
        result = prime * result + ((getAttribute7() == null) ? 0 : getAttribute7().hashCode());
        result = prime * result + ((getAttribute8() == null) ? 0 : getAttribute8().hashCode());
        result = prime * result + ((getAttribute9() == null) ? 0 : getAttribute9().hashCode());
        result = prime * result + ((getAttribute10() == null) ? 0 : getAttribute10().hashCode());
        result = prime * result + ((getAttribute11() == null) ? 0 : getAttribute11().hashCode());
        result = prime * result + ((getAttribute12() == null) ? 0 : getAttribute12().hashCode());
        result = prime * result + ((getAttribute13() == null) ? 0 : getAttribute13().hashCode());
        result = prime * result + ((getAttribute14() == null) ? 0 : getAttribute14().hashCode());
        result = prime * result + ((getAttribute15() == null) ? 0 : getAttribute15().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", epId=").append(epId);
        sb.append(", epMoney=").append(epMoney);
        sb.append(", entryDate=").append(entryDate);
        sb.append(", description=").append(description);
        sb.append(", tenantId=").append(tenantId);
        sb.append(", objectVersionNumber=").append(objectVersionNumber);
        sb.append(", creationDate=").append(creationDate);
        sb.append(", createdBy=").append(createdBy);
        sb.append(", lastUpdatedBy=").append(lastUpdatedBy);
        sb.append(", lastUpdateDate=").append(lastUpdateDate);
        sb.append(", attribute1=").append(attribute1);
        sb.append(", attribute2=").append(attribute2);
        sb.append(", attribute3=").append(attribute3);
        sb.append(", attribute4=").append(attribute4);
        sb.append(", attribute5=").append(attribute5);
        sb.append(", attribute6=").append(attribute6);
        sb.append(", attribute7=").append(attribute7);
        sb.append(", attribute8=").append(attribute8);
        sb.append(", attribute9=").append(attribute9);
        sb.append(", attribute10=").append(attribute10);
        sb.append(", attribute11=").append(attribute11);
        sb.append(", attribute12=").append(attribute12);
        sb.append(", attribute13=").append(attribute13);
        sb.append(", attribute14=").append(attribute14);
        sb.append(", attribute15=").append(attribute15);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}